float4x4 modelViewProj;
texture  meshTexture;

sampler2D MeshTextureSampler = 
sampler_state
{
    Texture = <meshTexture>;    
    MipFilter = LINEAR;
    MinFilter = LINEAR;
    MagFilter = LINEAR;
};

struct VS_OUTPUT
{
   float4 position : POSITION;
   float2 texUV    : TEXCOORD0;
};

VS_OUTPUT basic_vs(float4 objPos : POSITION, float2 uv : TEXCOORD0)
{
   VS_OUTPUT output;
   output.position = mul(objPos, modelViewProj);
   output.texUV = uv;
   return output;
}

float4 basic_ps(VS_OUTPUT In) : COLOR
{
    float4 color = tex2D(MeshTextureSampler, In.texUV);
    return color;
}

technique BasicShader
{
    pass P0
    {          
        VertexShader = compile vs_2_0 basic_vs();
        PixelShader  = compile ps_2_0 basic_ps();
    }
}
